#pragma once
#include "state.h"
#include "krryn.h"

#include <memory>

namespace krryn{
namespace system{ template<typename _Tag> class renderer; }
namespace core{ class job_manager; }
namespace view{ class camera_fps; class camera_fps_controller_default; }
namespace gui{ class database_widgets; }
namespace usr{
	class audio_thread;
	class state_intro : public core::state{
	public:
		state_intro() : state(":intro") {}
		virtual ~state_intro();
	protected:
		virtual void init();
		virtual void activate();
		virtual void deactivate();
		virtual void tick(float a_DeltaTime);
	private:
		gui::database_widgets *m_Database;
		gui::window* m_Window;
		gui::event_loop m_EventLoop;
	};
}
}
